#ifndef DEV_LSG_CC_H
#define DEV_LSG_CC_H

#include "ae_device.h"

//LSG Control Center

class CRFID_LSG_CC  : public CAEDevice
{
public:
    static const BYTE Additional_PC_T = 1 << 0;
    static const BYTE Additional_PC_D = 1 << 1;
    static const BYTE Additional_PC_R = 1 << 2;
    static const BYTE Additional_Alarm = 1 << 3;
    static const BYTE Additional_PC_DR = 1 << 4;

    static const BYTE buff_type_alarm = 0;
    static const BYTE buff_type_day = 1;
    static const BYTE buff_type_realtime = 2;

    CRFID_LSG_CC();
    virtual ~CRFID_LSG_CC();
    err_t func_LSGCC_SinglelDoor_Alarm(BYTE gate_id);
    err_t func_LSGCC_SinglelDoor_SetOutput(BYTE gate_id,BYTE output_ids[],BYTE output_len,BYTE type,BYTE freq,DWORD at,DWORD dt);
    err_t func_LSGCC_SinglelDoor_SetAtmosphereLight(BYTE gate_id,BYTE light_id,BYTE type,BYTE freq,DWORD at,DWORD dt);
    err_t func_LSGCC_SinglelDoor_GetIRTriggerCount(BYTE gate_id,DWORD ir_ids[],BYTE* ir_nums);
    err_t func_LSGCC_InitPC(BYTE type,DWORD inPC,DWORD outPC);
    err_t func_LSGCC_GetPC(BYTE option, DWORD * pcInTotal, DWORD * pcOutTotal, DWORD * pcInDay, DWORD * pcOutDay);
    err_t func_LSGCC_GetSystemTime(DWORD* year,BYTE* month,BYTE* day,BYTE* hour,BYTE* minute,BYTE* second);
    err_t func_LSGCC_SetSystemTime(DWORD year,BYTE month,BYTE day,BYTE hour,BYTE minute,BYTE second);

    err_t func_LSGCC_GetRecords(bool* deleteFlag,DWORD Addtionflag,BYTE gate_id,DWORD* total_in,DWORD* total_out,DWORD* day_in,DWORD* day_out);
private:

};

#endif // DEV_LSG_CC_H
